<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <div>我是div</div>
    <span>我是span</span>
    <ul>
        <li>我是li</li>
        <li>我是li</li>
        <li>我是li</li>
    </ul>
    <div class="box">
        <span class = "erweima">×</span>
    </div>
    <script>
        // 1.通过已知元素节点获取最近的父节点
        var erweima = document.querySelector('.erweima')
        // var box = document.querySelector('.box') 传统写法
        var box = erweima.parentNode //元素导航写法
        console.log(box);
        
        // 2.通过已知元素节点获取所有的子节点，子节点中既有元素节点也有文本节点
        // 通常不建议使用该方法来获取子节点，因为太麻烦了
        var ul = document.querySelector('ul')
        console.log(ul.childNodes);

        // 3.非标准方法，但其获得所有浏览器认可，用于选取已知元素节点的所有子元素节点
        console.log(ul.children);

        // 4.获取第一个子节点
        console.log(ul.firstChild);

        // 5.获取第一个元素子节点
        console.log(ul.firstElementChild);

        // 6.获取最后一个子节点
        console.log(ul.lastChild);

        // 7.获取最后一个元素子节点
        console.log(ul.lastElementChild);
    </script>
</body>

</html>